from pydantic import Field, BaseModel

from recruit.domain.models.base import Base
from recruit.domain.models.resume_id import ResumeAboutUsId, ResumeId


class BaseResumeAboutUs(Base):
    about_us: str | None = Field(None, description='О себе')


class ResumeAboutUsCreate(BaseResumeAboutUs):
    about_us: str = Field(None, description='О себе')


class ResumeAboutUsResult(BaseResumeAboutUs):
    id: ResumeAboutUsId | None = Field(
        None,
        description='Уникальный идентификатор'
    )


class ResumeAboutUsUpdate(BaseResumeAboutUs):
    pass


class ResumeAboutUsCreateDTO(BaseModel):
    resume_id: ResumeId
    about_us: str
